YES 0.47200000000000003
↳ HASKELL
↳ LR
((liftM4 :: (a -> e -> d -> c -> b) -> IO a -> IO e -> IO d -> IO c -> IO b) :: (a -> e -> d -> c -> b) -> IO a -> IO e -> IO d -> IO c -> IO b) |
import qualified Maybe import qualified Prelude |
|||||
liftM4 :: Monad d => (e -> b -> a -> f -> c) -> d e -> d b -> d a -> d f -> d c
|
import qualified Monad import qualified Prelude |
\x4→return (f x1 x2 x3 x4)
liftM40 f x1 x2 x3 x4 = return (f x1 x2 x3 x4)
\x3→m4 >>= liftM40 f x1 x2 x3
liftM41 m4 f x1 x2 x3 = m4 >>= liftM40 f x1 x2 x3
\x2→m3 >>= liftM41 m4 f x1 x2
liftM42 m3 m4 f x1 x2 = m3 >>= liftM41 m4 f x1 x2
\x1→m2 >>= liftM42 m3 m4 f x1
liftM43 m2 m3 m4 f x1 = m2 >>= liftM42 m3 m4 f x1
↳ HASKELL
↳ LR
↳ HASKELL
↳ BR
((liftM4 :: (c -> d -> e -> b -> a) -> IO c -> IO d -> IO e -> IO b -> IO a) :: (c -> d -> e -> b -> a) -> IO c -> IO d -> IO e -> IO b -> IO a) |
import qualified Monad import qualified Prelude |
import qualified Maybe import qualified Prelude |
|||||
liftM4 :: Monad b => (d -> e -> c -> f -> a) -> b d -> b e -> b c -> b f -> b a
|
|||||
|
|||||
|
|||||
|
|||||
|
↳ HASKELL
↳ LR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
((liftM4 :: (e -> d -> c -> b -> a) -> IO e -> IO d -> IO c -> IO b -> IO a) :: (e -> d -> c -> b -> a) -> IO e -> IO d -> IO c -> IO b -> IO a) |
import qualified Maybe import qualified Prelude |
|||||
liftM4 :: Monad f => (e -> b -> d -> c -> a) -> f e -> f b -> f d -> f c -> f a
|
|||||
|
|||||
|
|||||
|
|||||
|
import qualified Monad import qualified Prelude |
undefined
| False
= undefined
undefined = undefined1
undefined0 True = undefined
undefined1 = undefined0 False
↳ HASKELL
↳ LR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ Narrow
(liftM4 :: (e -> b -> d -> c -> a) -> IO e -> IO b -> IO d -> IO c -> IO a) |
import qualified Monad import qualified Prelude |
import qualified Maybe import qualified Prelude |
|||||
liftM4 :: Monad b => (e -> f -> c -> a -> d) -> b e -> b f -> b c -> b a -> b d
|
|||||
|
|||||
|
|||||
|
|||||
|